import { SerializeStream } from "../../Framework/Serialize/SerializeStream";
import { MarshalException } from "../../Engine/RMI/MarshalException";
type int = number;
//class EBossAI

export class EBossAI {
  constructor(arg1: int) {
    this.__value = arg1;
    return;
  }

  public value(): int {
    return this.__value;
  }

  public __write(arg1: SerializeStream): void {
    arg1.writeInt(this.__value);
    return;
  }

  public static convert(arg1: int): EBossAI {
    return new EBossAI(arg1);
  }

  public static __read(arg1: SerializeStream): EBossAI {
    var loc1 = arg1.readInt();
    if (loc1 < 0 || loc1 >= 32769) {
      throw new MarshalException();
    }
    return EBossAI.convert(loc1);
  }

  public static /* const */ _EBossAIPatrol: int = 1;

  public static /* const */ _EBossAIRunAway: int = 2;

  public static /* const */ _EBossAISimilarCalls: int = 4;

  public static /* const */ _EBossAITask: int = 8;

  public static /* const */ _EBossAINotBindPlayer: int = 16;

  public static /* const */ _EBossAINotFollowPlayer: int = 32;

  public static /* const */ _EBossAIFollowPlayer: int = 64;

  public static /* const */ _EBossAIStopOnAttack: int = 128;

  public static /* const */ _EBossAIAttackThePlayer: int = 256;

  public static /* const */ _EBossAICanntPatrol: int = 512;

  public static /* const */ _EBossAIVisionAllMap: int = 1024;

  public static /* const */ _EBossAILockHatred: int = 2048;

  public static /* const */ _EBossAISleepingHurt: int = 4096;

  public static /* const */ _EBossAICannotSee: int = 8192;

  public static /* const */ _EBossAITwoAttackType: int = 16384;

  public static /* const */ _EBossAINotClearBuff: int = 32768;

  public /* var */ __value: int;
}
